--[[
描述 ： UITabBarViewItem
作者 ： 付大志
时间 ： 13/08/08
]]
MLSplitItemView = Class(MLView,'MLSplitItemView');


MLSplitItemView.isSel  =  false;      -- 是否选中
MLSplitItemView.bgImage    = nil;     -- 背景图片
MLSplitItemView.bgSelImage = nil;       -- 聚集图片
MLSplitItemView.itemImage    = nil;     -- 背景图片
MLSplitItemView.iteselImage = nil;    -- 聚集图片
MLSplitItemView.itemImageWidth = nil;   -- item 宽度  在指定图片区域内居中显示 itemIcon
MLSplitItemView.itemImageHeight= nil;   -- item 高度   在指定图片区域内居中显示 itemIcon
MLSplitItemView.iconType = 0;			-- 0 icon和文字一排， 1 icon和文字上下排列
MLSplitItemView.text   =  nil;     -- 显示文本
MLSplitItemView.fontHeight    = nil;   -- 字体高度
MLSplitItemView.fontColor    = nil;    -- 字体背景颜色
MLSplitItemView.fontFocusColor = nil;  -- 字体聚集颜色
MLSplitItemView.iconAreaWidth    = 0;     --  问题高度
MLSplitItemView.mWidth =   nil;     -- 宽度
MLSplitItemView.mHeight =  nil;     -- 高度


--[[
功能   ： new UITabBarViewItem 控件
参数   ： w       --  宽度
h       --  高度
name    --  控件名称（可选）
iconAreaWidth --左右间距
返回   ： button 实例
]]

function MLSplitItemView:init(width, height, iconAreaWidth, iconType, viewCtrl, id)

  width  = width or UITheme.SPLITITEMVIEW_WIDTH;
  height = height or UITheme.SPLITITEMVIEW_HEIGHT;
  iconAreaWidth = iconAreaWidth or UITheme.SPLITITEMVIEW_AREAW;
  iconType = iconType or UITheme.SPLITITEMVIEW_ICONT;

  self:initView(width, height, viewCtrl, id);
  -- 初始化
  self.mWidth =  width;
  self.mHeight = height;

  self.iconAreaWidth = iconAreaWidth;
  self.iconType = iconType;

  self.itemImage = UIImage.imageName(UITheme.BUTTON_BG_IMAGE);
  self.iteselImage = UIImage.imageName(UITheme.RADIOBUTTON_SEL_IMAGE);

  self.bgImage = UIImage.imageName(UITheme.RADIOBUTTON_BG_IMAGE);
  self.bgSelImage = UIImage.imageName(UITheme.RADIOBUTTON_SEL_IMAGE);

  self.fontHeight = AW(UITheme.BUTTON_FONT_HEIGHT);
  self.fontColor = UITheme.BUTTON_FONT_COLOR;
  self.fontFocusColor = UITheme.BUTTON_FONT_FOCUS_COLOR;
  self.itemImageWidth = 0;
  self.itemImageHeight = 0;
  return self;
end

--[[
功能   ： 画控件
参数   ： 无
返回   ： 无
]]
function MLSplitItemView:draw()
  local g = self:getGraphic():clear();--mRootView的画图工具
  local bgimage = self.bgImage;
  local itemImage = self.itemImage;
  local color = self.fontColor;
  local strw, x, y;
  if self.isSel then
    bgimage = self.bgSelImage or self.bgImage;
    itemImage = self.iteselImage or self.itemImage;
    color = self.fontFocusColor;
  end

  if self.text then
    strw = MLNative.measStringWidth(self.text, self.fontHeight, self.fs);
    if self.iconType == 0 then	--左右
      x, y =  self.iconAreaWidth + self.itemImageWidth + self.iconAreaWidth , (self.mHeight-self.fontHeight)/2;
    else
      x, y = (self.mWidth -strw)/2, (self.mHeight-self.itemImageHeight-self.fontHeight-self.iconAreaWidth)/2 + self.itemImageHeight + self.iconAreaWidth;
    end
    g:drawString(self.text, x, y , color, self.fontHeight, self.fs);
  end

  if bgimage then
    g:drawImage(bgimage, 0, 0, self.mWidth, self.mHeight);
  end

  if itemImage then
    local ix, iy, iw, ih = 0, 0, self.itemImageWidth, self.itemImageHeight;
    if self.iconType == 0 then
      ix = (self.mWidth - self.iconAreaWidth*3 - strw)/2 + self.iconAreaWidth;
      iy = (self.mHeight - self.itemImageHeight)/2;
    else
      ix = (self.mWidth - self.itemImageWidth)/2;
      iy = (self.mHeight - self.itemImageHeight - self.fontHeight - self.iconAreaWidth)/2;
    end
    g:drawImage(itemImage, ix, iy, self.itemImageWidth, self.itemImageWidth);
  end
end
--[[
功能   ： 显示控件
参数   ： 无
返回   ： 无
]]
function MLSplitItemView:show()
  self:draw();
end


--[[
功能   ： 更新控件
参数   ： 无
返回   ： 无
]]
function MLSplitItemView:update()
  self:show();
end
